Описывает переменные и выделяет для них память.
Dim [WithEvents] имяПеременной[([индексы])] [As [New] тип] [, [WithEvents] имяПеременной[([индексы])] [As [New] тип]] . . .
Параметры
WithEvents
Необязательный. Ключевое слово,
указывающее, что имяПеременной является объектной переменной, которая
используется при отклике на события, генерируемые объектом ActiveX.
Применяется только в модулях класса. Пользователь имеет возможность описать с
помощью ключевого слова WithEvents произвольное количество отдельных
переменных, однако при этом не допускается создание массивов. Не допускается
также использование ключевого слова New с ключевым словом
WithEvents.
имяПеременной
Обязательный. Имя переменной,
удовлетворяющее стандартным правилам именования переменных.
индексы
Необязательный. Размерности переменной массива; допускается описание до 60
размерностей. Для задания аргумента индексы используется следующий
синтаксис:
[нижний To] верхний [, [нижний To] верхний] . . .Если нижний индекс не задан явно, нижняя граница массива определяется инструкцией Option Base. Если отсутствует инструкция Option Base, нижняя граница массива равняется нулю.
Замечания Переменные, описанные с помощью ключевого слова Dim на
уровне модуля, доступны для всех процедур в данном модуле. Переменные, описанные
на уровне процедуры, доступны только в данной процедуре.
Инструкция
Dim предназначена для описания типа данных переменной на уровне модуля
или процедуры. Например, следующая инструкция описывает переменную с типом
Integer.
Dim NumberOfEmployees As IntegerИнструкция Dim предназначена также для описания объектного типа переменных. Далее приводится описание переменной для нового образца листа электронной таблицы.
Dim X As New WorksheetЕсли при описании объектной переменной не используется ключевое слово New, то для использования объекта, на который ссылается переменная, существующий объект должен быть с помощью инструкции Set присвоен переменной. До присвоения объекта описанная объектная переменная имеет специальное значение Nothing, которое указывает, что она не содержит ссылку на какой-либо определенный экземпляр объекта.
Пример
В данном примере инструкция Dim используется для объявления
переменных и массивов. По умолчанию нижняя граница индексов массива равняется 0;
для ее изменения следует использовать инструкцию Option Base на уровне
модуля.
' По умолчанию AnyValue и MyValue являются переменными типа Variant ' и имеют пустые значения. Dim AnyValue, MyValue ' Явно объявляет переменную типа Integer. Dim Number As Integer ' Несколько объявлений на одной строке. AnotherVar является переменной ' типа Variant, поскольку ее тип опущен. Dim AnotherVar, Choice As Boolean, BirthDate As Date ' DayArray является массивом, состоящим из 51 элемента типа Variant. ' Индексы элементов массива лежат в диапазоне от 0 до 50, если для ' текущего модуля используемая по умолчанию нижняя граница элементов ' массива (0) не изменена с помощью инструкции Option Base. Dim DayArray(50) ' Matrix является двумерным массивом значений типа Integer. Dim Matrix(3, 4) As Integer ' MyMatrix является трехмерным массивом значений типа Double с явно ' заданными границами индексов. Dim MyMatrix(1 To 5, 4 To 9, 3 To 5) As Double ' BirthDay является массивом дат с индексами от 1 до 10. Dim BirthDay(1 To 10) As Date ' MyArray является динамическим массивом значений типа Variant. Dim MyArray()